1. Field of the Invention
The present invention relates to a session sharing system, a session sharing method, a session sharing program, and a user terminal, and is applicable to a system, a method, a program and a user terminal for sharing sessions related to a web service and a telephone function in an application that is built in a SIP-compliant application server and cooperates for a web service and a telephone function for example.
2. Description of the Related Art
For example, when an application server (hereinafter, referred to as a “server”) provides an application that cooperates for a web service and a telephone function, it is important to specify a user to link user information for the web service and the telephone function.
FIG. 2 is an explanatory diagram of a session management of HTTP (HyperText Transfer Protocol) and SIP (Session Initiation Protocol) in a case where a server provides a cooperated application to three users A to C, for example. In FIG. 2, when the server generates HTTP session objects “1,” “2” and “3” and SIP session objects “a,” “b” and “c,” it is important that the server that provides the cooperated application associates the HTTP session object “3” with SIP session object “b” as the session objects related to the “user A”, for example.
In general, when a web service is provided, a method is employed in which a web server stores cookies onto a browser to maintain a user session, as a method for managing HTTP sessions, for example.
Further, when a voice communication is performed via a call connection using SIP, a method for storing a user session using a CALL-ID or the like according to a standardized technology specified in IETF RFC 3261 is employed as a method for managing SIP sessions, for example.
In a case of a scheme to initiate a call from a server (a third party call, for example) triggered by a web HTTP request for example, since the server controls the call using SIP based on the HTTP request, it is relatively easy to link the HTTP session and SIP session.
However, in a case of an application with a scheme to initiate a call from a user terminal as illustrated in FIG. 3, since the user terminal receives an HTTP request message and a SIP INVITE message independently, it is difficult to link the sessions in the server.
In such a case, the following method is employed as a method to link HTTP session and SIP session.
A first method is a method for embedding session-linking identification information to a response from a web application.
In this case, for example, a server 20 generates an identifier that uniquely identifies an HTTP session and adds the identifier to a response message in a web application processing shown in step S3 of FIG. 3. After that, a user terminal 10 adds the identifier to a parameter (an INVITE parameter, for example) when initiating a call and transmits the parameter to the server 20. Upon receiving the parameter, the server 20 links the corresponding HTTP session and SIP session based on the identifier in a SIP session generation process shown in step S6.
A second method is a method for registering a phone number of a user terminal to a web application in advance.
In this case, for example, the server 20 registers information that identifies a call such as a phone number of the user terminal 10 of a user, in the web application process shown in step S3. When generating a SIP session in step S6, the server 20 executes matching between a calling source number included in an INVITE message from the user terminal 10 with previously registered information to link the HTTP session and SIP session.
Here, the above methods explained with referring to the example of FIG. 3 are the cases of an application that initiates a call after a web access. In some applications, there is a different case in which a web access is executed after initiating a call and, in such a case, the second method is employed in which the server 20 registers a phone number of the user terminal 10 to a web application in advance.